600 Y=Y(C):IF Y >1 THEN X=X(C):SCR=SCREEN (Y,X):IF (SCR=AS1 OR SCR=AS2) THEN GOSUB 850:ELSE LOCATE Y,X: IF ALT THEN PRINT C2$;:ELSE PRINT B$;:Y=Y+1:IF Y>YMAX THEN Y(C)=1:X(C)=C:GOSUB 910 ELSE LOCATE Y,X:PRINT C$;:Y(C)=Y
610 NEXT
620 FOR S=1 TO 4:Y=SY(S):X=SX(S):LOCATE Y,X:PRINT SB$;:IF S>1 THEN X=X+1:SX(S)=X:IF X>SXMAX THEN X=1 :SX(S)=X
625 IF DRVY THEN GOSUB 725
630 LOCATE Y,X:PRINT S$;
640 NEXT
642 IF RVY THEN RVY=RVY-1 ELSE RVY=RND*80/(P-BONUSP+1):SRVY=RND*4+1:DRVY=RND*6+1-4
650 COLOR 1:LOCATE DY,DX:PRINT DB$;:COLOR 7:DX = DX -1
660 WEND
670 P=P+1
680 WEND
690 IF SCORE > HISCORE THEN HISCORE = SCORE
700 LOCATE 1,20:PRINT "score=";SCORE;" high score=";HISCORE;" PLAY AGAIN [y/n]";:AGAIN$=INKEY$:IF NOT (AGAIN$="y" OR AGAIN$="Y" OR AGAIN$="n" OR AGAIN$="N") THEN 700
710 WEND
720 CLS:KEY ON:END
725 IF SRVY=S THEN YT=Y+SGN(DRVY):DRVY=DRVY-SGN(DRVY):IF (YT >=SMINY AND YT=< YMAX)THEN Y=YT:SY(S)=Y
780 IF XL=XH THEN IF SX(S)=XL-2+(S=1) THEN SCORE=SCORE+Y:FOR EX=0 TO 4:FOR XR=0 TO MAXR:LOCATE Y-MAXR+XR,XL+1+(S=1):PRINT BT$(EX,XR);:NEXT:FOR JK=1 TO EX*EX*30:NEXT:NEXT:FOR EX=8 TO 11:FOR XR=0 TO MAXR:LOCATE Y-MAXR+XR,X+1:PRINT BM$(EX,XR);:NEXT:NEXT
784 IF XL=XH THEN IF SX(S)=XL-2+(S=1) THEN FOR EX=4 TO 0 STEP -1:FOR XR=0 TO MAXR:LOCATE Y-MAXR+XR,XL+1+(S=1):PRINT BT$(EX,XR);:NEXT:FOR JK=1 TO EX*EX*50:NEXT:NEXT
810 FOR EX=0 TO 7:FOR XR=0 TO MAXR:LOCATE Y-MAXR+XR,X:PRINT BM$(EX,XR);:NEXT:NEXT
820 COLOR 7
830 LOCATE Y,X:PRINT " ";
840 RETURN
850 'BLOWED-UP SUB
860 Y(C)=1:GOSUB 910
870 XL=X:XH=X:PS=-1
880 WHILE SCORE >PS:PS=SCORE:FOR S=1 TO 4:IF SY(S)=Y THEN IF SX(S)=<XH THEN IF SX(S)+6>XL THEN X=SX(S):GOSUB 730:SCORE=SCORE+Y:SY(S)=SMINY+RND*(YMAX-SMINY):SX(S)=1+RND*SXMAX
890 NEXT:WEND
900 RETURN
910 'FREED UP DEPTH CHG
920 FC=FC+1:IF FC= 1 THEN KEY (14) ON
930 RETURN
935 'attempt to drop one
940 N=4:WHILE Y(N)>1:N=N-1:WEND:IF N THEN Y(N)=DY+1:X(N)=DX:IF DX<1 THEN X(N)=1
960 FC=FC-1 :IF FC = 0 THEN KEY (14) OFF
970 RETURN
980 '
1000 GOSUB 1330
1010 GOSUB 1220
1020 PRINT"Do you wish to see instructions?[y/n] "
1030 A$=INKEY$:IF A$="" THEN 1030 ELSE IF (A$="n" OR A$="N") THEN RETURN
1040 LOCATE 10
1050 PRINT"INSTRUCTIONS: Object of the game is to drop depth charges from the destroyer":PRINT"at the top of the screen, and hit the submarines scattered below."
1060 PRINT
1070 PRINT"The destroyer is above the waterline and moves toward the left. When it":PRINT"passes off the left side of the screen, it reappears on the right. The '2' at":PRINT"the top right tells what pass your on. The other number, where the '35' is,"
1080 PRINT"is your current score.":PRINT:PRINT"There are 4 subs. While you move left, they move right, except one of them,":PRINT"which is always stationary."
1090 GOSUB 1290:GOSUB 1220
1100 DA$=CHR$(25)
1110 PRINT"You drop a depth charge by pressing the 'down arrow' [";DA$;"] key."
1120 PRINT"You can only drop 4 depth charges at a time. That is, if 4 of them are":PRINT"currently floating down, you have to wait for one of them to hit a sub or":PRINT"reach the bottom of the screen before you will be able to drop another - so"
1130 PRINT"it's important to plan your drops carefully.":PRINT:PRINT"Scoring - the deeper the sub, the more points you get when you hit it.":PRINT"You get double points if you get a direct hit on the conning tower [USR]."
1135 PRINT:PRINT"When a sub is hit, it will reappear at some random location. Sometimes subs"
1140 PRINT"overlap - this gives you a chance to hit two with one charge."
1150 GOSUB 1290:GOSUB 1220
1160 PRINT"You get four passes across the screen with your destroyer. On the last"
1170 PRINT"pass, a '[' will appear at the upper left to alert you. If you manage to ":PRINT"accumulate at least 200 points before the destroyer reaches the '[', the '['":PRINT"will disappear and you will get a bonus pass. You may earn additional bonus"
1180 PRINT"passes, but it gets harder and harder. Whenever you fall behind the points":PRINT"needed for an additional pass, the '[' will reappear."
1460 PRINT" WHILEWHILEWENDLINE WHILEWHILEWHILEWENDWEND WHILEWENDWENDWHILELINE LINELINEWHILEWHILEWENDWENDWHILE WHILE LINE "
1470 PRINT" WHILE WHILE WEND LINE WEND WHILE WEND WHILE "
1480 PRINT" WEND WEND WHILE WHILE WEND WEND WEND WHILE "
1490 PRINT" WHILE WHILE LINELINELINELINEWHILE WHILEWHILELINELINEWHILE WEND WHILEWHILELINELINEWHILEWEND "
1500 PRINT" LINE LINE LINE WEND WHILE LINE WEND "
1510 PRINT" LINE LINE LINE WEND LINE LINE WHILE "
1520 PRINT" WHILEWHILEWENDLINE WHILEWHILEWHILEWENDWEND WHILE LINE WHILE LINE "
1530 PRINT" "
1540 PRINT" WHILEWHILEWENDLINE WHILE WEND WENDWENDWHILELINE LINELINEWHILEWHILEWENDWEND WHILEWHILELINELINE LINELINEWHILEWENDWEND "
1550 PRINT" WHILEWHILE WHILE WEND WEND LINE WEND WHILE WEND WHILELINE WHILE WHILE "
1560 PRINT" Jerry Kotler WEND WHILE WHILE WHILE WEND WEND WEND WHILE WEND "
1570 PRINT" I S Services WHILE LINELINELINEWHILELINEWHILE WHILEWHILELINELINEWHILEWHILE WENDWHILELINELINEWHILEWEND WEND WHILEWENDWHILE WHILELINEWHILEWEND "
1580 PRINT" Los Angeles LINE LINE LINE WEND LINE WHILE LINE WEND WEND WHILE "
1590 PRINT" LINELINE LINE LINE LINE WEND LINE LINE LINE WHILEWHILE WHILE LINE "
1600 PRINT" WHILEWHILEWENDLINE WHILE WHILE WHILE WHILE LINE WHILE LINELINEWHILEWEND LINEWHILEWENDWHILELINE "